//const EventEmitter=require('events').EventEmitter;
const Event=require('./05-event.js');


p
class Dog extends Event{
  constructor(name,energy){
    super();
    this.#name=name;
    this.#energy=energy;
    this.#startTime();
  }

  get name(){
    return this.#name;
  }

  get energy(){
    return this.#energy;
  }
  set energy(e){
    this.#energy=e;
    this.#startTimer();
  }
  #startTimer(){
    if(this.#timer!==null)return;
    this.#timer=setInterval(()=>{
      if(this.#energy>0){
        this.#energy--;
        this.emit('bark');
      }else{
        clearInterval(this.#timer);
        this.#timer=null;
      }
    },1000)
  }

  
  #name='';
  #energy=0;
  #timer=null;
}
module.exports Dog
